package io.renren.service;

import com.baomidou.mybatisplus.service.IService;
import io.renren.bean.ExercisesQuestionInfo;
import io.renren.common.utils.R;
import io.renren.entity.QuestionEntity;
import io.renren.entity.StudentEntity;
import org.apache.ibatis.annotations.Param;

/**
 * 题目记录表（记录顺序练习的题目）
 *
 * @author LANLING
 * @email lanling@gmail.com
 * @date 2018-10-22 10:28:14
 */
public interface QuestionService extends IService<QuestionEntity> {

    /**
     * 收藏题目
     * 在所有练习中把题目加到错题练习中收藏
     *
     * @param student    学员实体类
     * @param questionId 题目id
     * @return R
     */
    public R insertErrorQuestion(StudentEntity student, Integer questionId);


    /**
     * 获取科目总题数
     * @param subjectId 科目id
     * @return
     */
    Integer getSumQuestionNumber(Integer subjectId);

    //查看该学员是否有顺序联系的题目  有就继续联系  没有就创建
    Integer getQuestionRecordNumber(Integer subjectId, Integer studentId);


    /***
     * 获取随机练习题目
     * @param studentId 学生id
     * @param subjectId 科目id
     * @param sumQuestionNumber 科目总题数
     * @param sort 序号
     * @return
     */
    ExercisesQuestionInfo getRandomQuestion(@Param("studentId") Long studentId, @Param("subjectId") Integer subjectId, Integer sumQuestionNumber, @Param("sort") Integer sort);


    /***
     * 查看试卷题目是否够
     * 0.够，通过
     * 1.单选题不够
     * 2.多选题不够
     * 3.判断题不够
     * @param subjectId 科目id
     * @return
     */
    Integer checkQuestion(Integer subjectId);
}

